home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1996 March / EnigmA AMIGA RUN 05 (1996)(G.R. Edizioni)(IT)[!][issue 1996-03][Skylink CD IV].iso / earcd / comm1 / httprlg5.lha / httpirlog_v05b / docs / english / HTTPirLOG.doc next >
Text File  |  1992-09-02  |  12KB  |  358 lines

  1. Short:    CERN/ASERVE HTTPD Logfile Analyzer by PirlAGA
  2. Uploader: tekne@cmns.mnegri.it (PirlAGA)
  3. Author:   tekne@cmns.mnegri.it (PirlAGA)
  4. Type:     comm/net
  5. Replace:  HTTPirLOG_v04b.lha
  6.  
  7. HTTPirLOG v0.5 beta
  8. ===================
  9.  
  10. WHAT IS IT?
  11. -----------
  12. This is a New Beta Version of the HTTPD Logfile Analyzer 
  13. & Web Connections Statistics Maker, written by PirlAGA.
  14.  
  15. This Program allows you to process the logfile of the World 
  16. Wide Web servers programs (httpd = HTTP Daemons) and to get 
  17. Stats.
  18.  
  19. WHY?
  20. ----
  21. I've decided to write this program because i was curious to know
  22. Stats about my Web site, but there are no Amiga Programs that do
  23. It.
  24.  
  25. I've decided to release this beta version so you can help me to
  26. find bugs (if they are), to test it with different logfiles and 
  27. to suggest me new functions to add.
  28.  
  29. I think to release a MS-DOS version too, to get more users, but 
  30. AmigaOS is The Best Operating System Ever.
  31.  
  32. WHAT KIND OF DATA?
  33. ------------------
  34. I've tested it with the Logfile of the CERN httpd, and the
  35. program seems to work correctly.
  36.  
  37. Now the program works with AServe/AWS logfiles too !!
  38.  
  39. I haven't found logfiles of other daemons, so i cannot test my
  40. program with this.
  41.  
  42. If you have other types of HTTPD-logfile, like that of NCSA 
  43. httpd, please contact me SOON, so i can learn about it and teach 
  44. to my progam to recognize and process it.
  45.  
  46. FUNCTIONS
  47. ---------
  48. At the actual state, this program allows you to know:
  49.  
  50. - How many requests for each page,
  51. - How many connections from each domanin,
  52. - How many connections in each time band,
  53. - How many connections in each day, month or year.
  54.  
  55. The program shows stats on the screen, and produces an output file
  56. by default (in ASCII, ANSI or HTML format) too, so you can read the
  57. stats later too.
  58.  
  59. The program shows how many pages are listed in the logfiles, and 
  60. how many of these are processed for creating stats, as the user 
  61. told.
  62.  
  63. The program can also calculates percentages for each information,
  64. and the time it taked to get all operations.
  65.  
  66. Now you can SAVE the current config, so you will able to run the
  67. program fully congifured with just 1 parameter (that loads saved config).
  68.  
  69. However, the program is fully configurable and customizable by 
  70. parameters, so you can do exactly everything you want, and know
  71. anything you need.
  72.  
  73. TO DO
  74. -----
  75. - NCSA HTTPD log processing is quite done, i'm just waiting for a
  76.   logfile to test.
  77.  
  78. - I'll implement the function to specify a wildcard extension of
  79.   pagenames to process.
  80.  
  81. - Next thing to do, is to write a more friendly user interface.
  82.  
  83. - I hope to be able to sort and tabulate output stats of pages, 
  84.   domains and time bands.
  85.  
  86. - Catalogs support.
  87.  
  88. - CGI-BIN support.
  89.  
  90. - I'll add all functions you will suggest to me, if possible, so
  91.   write to me soon!
  92.  
  93. THE ARCHIVE
  94. -----------
  95. The Distribution Package is one LHA archive with:
  96.  
  97. HTTPirLOGv05         --->  The Main Executable  
  98. HTTPirLOGwb          --->  A Simple WB Interface (written in AmigaDOS)
  99. HTTPirLOGv05b.config --->  The Config File
  100. HTTPirLOG.doc        --->  English ASCII Documentation
  101. HTTPirLOG.guide      --->  English AmigaGuide Documentation
  102. HTTPirLOG_ITA.doc    --->  Italian ASCII Documentation
  103. HTTPirLOG_ITA.guide  --->  Italias AmigaGuide Documentation
  104.  
  105.        and lots of Original MagicWB Icons.
  106.  
  107. I've tested the program on standard A1200 and A3000  with 2, 3 & 4Mb 
  108. Cern-httpd logfiles, and it seems to work correctly.
  109. On A1200 there are some memory problems with all functions enabled.
  110.  
  111. USAGE
  112. -----
  113. The program is CLI only; if you run it without parameters, it shows 
  114. you a detailed "Usage parameters" list. 
  115.  
  116. As FIRST parameter, if you enter "-h" or "-H" you will get the Online
  117. step-by-step Help; if you enter "-l" or "-L" you will LOAD saved config.
  118.  
  119. The first parameter have to be the filename, the others may have random 
  120. order. Parameters (except the PageBase field), are case unsensitive.
  121.  
  122. You can also use the HTTPirLOGwb script, that provides to open window
  123. requesters and to give a littlebit more friendly interface; but it not
  124. allows you to enter pagebase.
  125.  
  126. Usage: HTTPirLOG
  127.        FILENAME/A    File To Check
  128.        NOELAPSED/S   Don't Show Elapsed Time
  129.        PROGRESS/S    Show Progress
  130.        JUSTHTML/S    Stats for .HTML Pages Only
  131.        PERCENT/S     Calculate Percentages
  132.        NOSEE/S       Don't Show Stats on Screen
  133.        NUMTOO/S      Show Stats of Numerical Domains
  134.        OUT=N/S       Output File Type
  135.        CLASS=N/S     Domain Level
  136.        DATE=N/S      Date Depth
  137.        BAND=NN/S     Time Band Depth
  138.        PAGE=XXX/S    Page or Directory Name
  139.        SAVE/S        Save Config
  140.  
  141.        HTTPirLOG -H  For The OnLine Help
  142.        HTTPirLOG -L  LOAD and use saved config
  143.  
  144.  FILENAME
  145.   The only necessary parameter is the FILENAME of the logfile to 
  146.   process, who have to be the first entry after the programname.
  147.  
  148.  NOELAPSED
  149.   This is a Flag. Tells to the Program to not calculate the elapsed 
  150.   time in the process.
  151.  
  152.  PROGRESS
  153.   Flag to enable the progress showing.
  154.  
  155.  JUSTHTML
  156.   Flag to tell to the program to process .HTML files only.
  157.  
  158.  PERCENT
  159.   With this flag, you ask to program to report percentages 
  160.   count in stats.
  161.  
  162.  NOSEE
  163.   This flag disables the video output. If both video and file
  164.   outputs are disabled, the program don't starts.
  165.  
  166.  NUMTOO
  167.   By default The Program Put all numerical domains in a single field 
  168.   called NUMERICAL. If you wanna show stats for each numerical domain too
  169.   you have to enable this flag.
  170.  
  171.  OUT=N
  172.   Specifies the Output File Type. 0= No Output File.
  173.   1= ASCII File (Default), 2= ANSII, 3= HTML !!
  174.  
  175.  CLASS=N 
  176.   this parameter needs a numerical value after the = .
  177.   It represents the class of domains to process (of the 
  178.   caller machine), and maybe a number from 0 to 9.
  179.   The 0 disables this function.
  180.   The default value is 1.
  181.  
  182.   EG: class=1  processes  .it  domains
  183.       class=2  processes  .cmns.it  domanis
  184.       class=2  processes  .mnegri.cmns.it  domains
  185.       etc.
  186.  
  187.  DATE=N
  188.   this contains a numerical value that tells to the program
  189.   what kind of dates to analyze. The range is 0 .. 3, 0 disables
  190.   this function. Default is 1.
  191.  
  192.   EG: date=1  is for  Day/Month/Year
  193.       date=2  is for  Month/Year
  194.       date=3  id for  Year only
  195.  
  196.  BAND=NN
  197.   this flag is for time bands size. It maybe 0, 15, 30 or 60.
  198.   0 disable this function, default is 60.
  199.  
  200.   EG: band=60  for  1 hour bands
  201.       band=30  for  30 mins bands
  202.       band=15  for  15 mind bands
  203.     
  204.  PAGE=XXX
  205.   this is the indicator of the most important function, the "pages
  206.   to process" indicator.
  207.   0 disables the pagenames processing (but NOT other functions).
  208.   Any other string will be accepted as a pagename or a base-directory
  209.   name: the program will process only pages in specified directory, or
  210.   just the specified page. (However, the program will process all page
  211.   names starting with that string)
  212.   All other Stats will refer to This pages.
  213.   Default is all pages.
  214.   For HomeUsers directory, you can entry both ~ or %7E qualifiers.
  215.  
  216.   EG: page=/~tekne/welcome.html - program will make stats for this
  217.                                   file
  218.  
  219.       page=/ridere/           \__ program will process the files in  
  220.       page=ridere             /   ridere directory only.
  221.  
  222.  SAVE
  223.   Adding this flag to other parameters, you can save the current config
  224.   in a file. You can edit this file, so you can confgure the program via
  225.   file, so it's easier.
  226.  
  227.  -L 
  228.   to Load saved config.
  229.  
  230. EXAMPLES
  231. --------
  232.  HTTPirLOG httpd.log save
  233.  
  234.    Output file (httpd.log.PIR) in ASCII, TimeCount Enabled, time bands 
  235.    of 1 hour, date type is Day/Month/Year, domains type is .it , do not
  236.    show progress, assuming all pages, display on video, don't calculate 
  237.    percentages, all numerical domains in a NUMERICAL field.
  238.    Saves the DEFAULT config.
  239.  
  240.  HTTPirLOG -l
  241.    Same as above.
  242.  
  243.  HTTPirLOG httpd2.log class=2 band=15 noelapsed justhtml progress 
  244.            page=/ridere/ nosee percent numtoo out=3
  245.  
  246.    Output file (httpd2.log.html) in HTML, domains type is cmns.it
  247.    time bands are 15 mins long, do not calculate time elapsed, date
  248.    type is still Day/Month/Year. Show progress, process just .HTML
  249.    pages from the /ridere/ directory, don't display on video, calculate
  250.    percentages, each numerical domain have his own stat.
  251.    Dont saves config.
  252.  
  253. THE CONFIG FILE
  254. ---------------
  255. The config file is very easy to modify: just change the fields values.
  256.  
  257. The file is structured to have rilevant data in "pair" lines, and 
  258. garbage and comment text in others. The Comments starts with "#", but
  259. the important is their line positions.
  260.  
  261. You CANNOT delete this lines !!! Because the program reads just PAIR lines 
  262. and SKIPS the others. You also CANNOT delete first 6 comment lines.
  263.  
  264. Here's a sample (comments are between * ) :
  265.  
  266. ###################################################################
  267. ## HTTPirLOG v05b Config File -- (c)1995 PirlAGA                 ##
  268. ## Dont Change Lines Starting with "#" - Dont modify Lines Order ##
  269. ## For Value Parameters, next line contains the VALUE            ##
  270. ## For Flags, next line contains Y or N                          ##
  271. ###################################################################
  272. # Next---> FILENAME      * you cannot remove this lines *
  273. httpd.log                       * you can modify this line * 
  274. # Next---> CALCULATE ELAPSED ?
  275. N                              * you can subsitute N with Y *
  276. # Next---> SHOW PROGRESS ?
  277. Y
  278. # Next---> JUST HTML ?
  279. Y
  280. # Next---> CALCULATE PERCENTAGES ?
  281. n
  282. # Next---> SHOW ON SCREEN ?
  283. y
  284. # Next---> PROCESS NUMERICAL DOMAINS ?
  285. n
  286. # Next---> OUTPUT TYPE
  287. 2                                    * here you can change value *
  288. # Next---> DOMAINS CLASS DEPTH
  289. 1                                 * according with program parameters *
  290. # Next---> DATE DEPH
  291. 2                            * IMPORTANT: all values have to start at *
  292. # Next---> TIME BANDS DEPTH  * the BEGINNING of the line *
  293. 30
  294. # Next---> PAGE BASE
  295. /ridere/
  296.  
  297. BUGS
  298. ----
  299. - For numerical domains it's not so nice to see just numbers, but
  300.   it comes from the logfile and from the caller's machine.
  301.   Maybe i'll implement an AmiTCP based solve-names, but i think it 
  302.   will take too many machine resources.
  303.  
  304. - My bad english.
  305.  
  306. - Sometimes, with small and dirty memory, something not goes on.
  307.  
  308. REFERENCE
  309. ---------
  310. This is the Logfiles Reference:
  311.  
  312. CERN
  313. -------------------------
  314. Type:
  315. Site - - [Day/Month/Year:Hours(24):Min:Sec +GMT_Hours] "Method URL Protocol" #1 #2
  316.  
  317. Es.:
  318. a1200.tekne.it - - [28/Sep/1995:13:15:35 +0000] "GET /~tekne/ridere/home.html HTTP/1.0" 304 0
  319.  
  320. NCSA ?
  321. -------------------------
  322. Type:
  323. Site [Weekday Month Day Hours(24):Min:Sec Year] Method URL Protocol
  324.  
  325. Es.:
  326. a1200.tekne.it [Sat Sep 28 13:15:35 1995] GET /~tekne/ridere/home.html HTTP/1.0
  327.  
  328. AServe
  329. -------------------------
  330. Type:
  331. [Weekday, Day Month Year Hours(24):Min:Sec GMT] Site - - "Method URL Protocol" #1 #2 <- Browser>
  332.  
  333. Es.:
  334. [Sat, 28 Sep 1995 13:15:35 GMT] a1200.tekne.it - - "GET / HTTP/1.0" 301 398 <- Voyager/AmigaOS/0.29>
  335.  
  336. The AServe Logfile contains more information than others, but at the
  337. actual state it's not so nice to decode.
  338.  
  339. LEGAL & AUTHOR
  340. --------------
  341. This program is provided "as is", you use it at your own risk.
  342.  
  343. This Program is EveryThingYouWant-Ware, that means you
  344. can send me Every Thing You Want to get Registered In
  345. Future Versions.
  346.  
  347. To refer bugs and suggestions, you can contact me via 
  348.  
  349. e.Mail: tekne@cmns.mnegri.it 
  350.         alessandro@mca.shiny.it
  351.  
  352. i hope to hear from you soon!
  353.  
  354. Look'up my Web at http://www.cmns.mnegri.it/~tekne/
  355.  
  356.                                  See ya, aMiGa RulEz!
  357.  
  358.                                    .oO PirlAGA Oo.